Python Developer. Professional — курс по продвинутому программированию на Python от Otus
Вы научитесь
Программа курса
Вас ожидают онлайн-лекции и семинары, на которых преподаватели дадут всю необходимую теорию и множество практических заданий. В конце курса вы защитите дипломный проект, который отправится прямиком в портфолио.
Advanced basics
Разберетесь с системой протоколов языка и итерирования в Python. Узнаете, как использовать функциональное программирование в Python. Поймете, как происходит процесс исполнения кода при оперировании виртуальной машины. Изучите влияние GIL на производительность продуктов на языке Python. Освоите новые и классически классы, а также использование основных принципов объектно-ориентированного программирования в Python. Узнаете, что такое дескрипторы и "магические методы", а также познакомитесь с особенностями метаклассов. Разберетесь с конструктором тестов и поймете, почему необходимо постоянно тестировать ПО. Познакомитесь со структурой пирамиды тестирования и узнаете, как в этой конструкции работают инструменты тестирования. Изучите основные паттерны для общения БД с сервисом, а также способы распространения программ Python.
Разберетесь с системой протоколов языка и итерирования в Python.
Узнаете, как использовать функциональное программирование в Python.
Поймете, как происходит процесс исполнения кода при оперировании виртуальной машины.
Изучите влияние GIL на производительность продуктов на языке Python.
Освоите новые и классически классы, а также использование основных принципов объектно-ориентированного программирования в Python.
Узнаете, что такое дескрипторы и "магические методы", а также познакомитесь с особенностями метаклассов.
Разберетесь с конструктором тестов и поймете, почему необходимо постоянно тестировать ПО.
Познакомитесь со структурой пирамиды тестирования и узнаете, как в этой конструкции работают инструменты тестирования.
Изучите основные паттерны для общения БД с сервисом, а также способы распространения программ Python.
Web
Разберетесь с принципами работы DW и контейнерами WSGI. Научитесь работать с проектами в фреймворке Django и изучите организацию классических веб-сервисов. Узнаете, как работает и устроен Object-relational mapping, и разберете на реальных кейсах, как он используется. Поймете, как ориентироваться в пространстве распределительных систем и баз данных. Разберетесь с логикой представления во фреймворке Django. Узнаете, какие функции у формы в Django и как с ними работать. Изучите архитектурный стиль взаимодействия компонентов Rest. Научитесь расширять свой веб-проект, а также оптимизировать Frontend-продукты.
Разберетесь с принципами работы DW и контейнерами WSGI.
Научитесь работать с проектами в фреймворке Django и изучите организацию классических веб-сервисов.
Узнаете, как работает и устроен Object-relational mapping, и разберете на реальных кейсах, как он используется.
Поймете, как ориентироваться в пространстве распределительных систем и баз данных.
Разберетесь с логикой представления во фреймворке Django.
Узнаете, какие функции у формы в Django и как с ними работать.
Изучите архитектурный стиль взаимодействия компонентов Rest.
Научитесь расширять свой веб-проект, а также оптимизировать Frontend-продукты.
Data engineering
Изучите возможности библиотеки NumPy, узнаете, как работать со структурой данных ndarray и как проходит индексирование данных. Поймете, как устроены операции с массивами и broadcasting, а также разберетесь с IPython. Узнаете, какие возможности предоставляет библиотека pandas, научитесь проводить операции на Dataframe, поймете, как интегрировать продукты в продакшен. Научитесь визуализировать данные с помощью Python и изучите функции, интерфейсы и различия библиотек matplotlib и seahorn.
Изучите возможности библиотеки NumPy, узнаете, как работать со структурой данных ndarray и как проходит индексирование данных.
Поймете, как устроены операции с массивами и broadcasting, а также разберетесь с IPython.
Узнаете, какие возможности предоставляет библиотека pandas, научитесь проводить операции на Dataframe, поймете, как интегрировать продукты в продакшен.
Научитесь визуализировать данные с помощью Python и изучите функции, интерфейсы и различия библиотек matplotlib и seahorn.
Highload
Узнаете, как устроено конкуретное программирование, а также какие ограничение при работе накладывает виртуальная машина. Поймете, как происходит запуск процессов на разных операционных системах и как устроено взаимодействие разных процессов. Научитесь писать расширения для своих программ на языке С. Узнаете, как устроен синтаксис языка Cython и какие возможности предоставляет интерпретатор PyPy. Изучите историю библиотеки asyncio в Python. Поймете, как устроен язык асинхронных вызовов и какие бывают уровни у использования asyncio, а также познакомитесь с event loop. Начнете изучать язык Goland и узнаете, как он используется в программировании. Разберете на реальных кейсах работу использование языка Goland и подробней изучите его внутреннее устройство. Научитесь пользоваться инструментами для профилирования кода Linux, а также понимать архитектуру вашего железа. Поймете, в чем основные различия между старой и новой версией языка Python.
Узнаете, как устроено конкуретное программирование, а также какие ограничение при работе накладывает виртуальная машина.
Поймете, как происходит запуск процессов на разных операционных системах и как устроено взаимодействие разных процессов.
Научитесь писать расширения для своих программ на языке С.
Узнаете, как устроен синтаксис языка Cython и какие возможности предоставляет интерпретатор PyPy.
Изучите историю библиотеки asyncio в Python.
Поймете, как устроен язык асинхронных вызовов и какие бывают уровни у использования asyncio, а также познакомитесь с event loop.
Начнете изучать язык Goland и узнаете, как он используется в программировании.
Разберете на реальных кейсах работу использование языка Goland и подробней изучите его внутреннее устройство.
Научитесь пользоваться инструментами для профилирования кода Linux, а также понимать архитектуру вашего железа.
Поймете, в чем основные различия между старой и новой версией языка Python.
Проектная работа
Познакомитесь с правилами создания дипломной работы и выберете тему для своего проекта. Сможете задать интересующие вас вопросы по поводу итогового проекта и домашних заданий кураторам курса. Представите свою дипломную работу экспертам курса и получите от них необходимые рекомендации и полезные советы.
Познакомитесь с правилами создания дипломной работы и выберете тему для своего проекта.
Сможете задать интересующие вас вопросы по поводу итогового проекта и домашних заданий кураторам курса.
Представите свою дипломную работу экспертам курса и получите от них необходимые рекомендации и полезные советы.